Concurrent Prolog Compiler on Top of Prolog
نویسندگان
چکیده
A Concurrent Prolog compiler, whose target language is (sequential) Prolog, was implemented in Prolog. The object program obtained can further be compiled into machine codes by a Prolog compiler. Due to the similarity among the source, target and implementation languages, the compiler and the runtime support were small and very rapidly developed. Benchmark tests showed that (twice) compiled Concurrent Prolog programs ran 2.7 to 4.4 times faster and 2.7 to 5.3 times slower than comparable Prolog programs running on the interpreter and compiler, respectively, of the same Prolog system. After these experiments, the Concurrent Prolog compiler was modified to obtain a compiler of the new parallel logic programming language, GHC (Guarded Horn Clauses), and almost the same efficiency was achieved. These compilers will serve for practice of parallel logic programming.
منابع مشابه
Use of Prolog for developing a new programming language
This paper describes how Prolog was used for the development of a new concurrent realtime symbolic programming language called Erlang. Erlang was developed by rst building a prototype in Prolog the prototype was used by a user group to test their reactions to the language. As time passed many features were added (and removed) from the interpreter and eventually the language reached a level of m...
متن کاملLMT: A PROLOG-Based Machine Translation System
Analysis of the source is essentially independent of the task of translation, and in fact the very same English grammar used in LMT is also used in an English data base query system. Analysis is based on a logic grammar formalism, Modular Logic Grammars (MLG’s) (McCord, 1985). MLG’s have clearly separated syntactic, lexical, and semantic components. Furthermore, syntactic structure building is ...
متن کاملVerification Tools in the Development of Provably Correct Compilers
The paper presents a practical veriication tool that helps in the development of provably correct compilers. The tool is based on the approach of proving termination of PROLOG-like programs using term-rewriting techniques and a technique of testing whether a given PROLOG program can be soundly executed on PROLOG interpreters without the Occur-check test. The tool has been built on top of the th...
متن کاملHistory on the implementation and compilation of Prolog
Prolog, abbreviation for PROgrammation en LOGique, was designed in 1972 by Philippe Roussel, Alain Colmerauer at the University of AixMarseille and Robert Kowalski at the University of Edinburgh [1]. Since 1972, Prolog has been one of the most popular logical programming language based on Horn clause logic. Intrigued by the interesting history of Prolog, I decided to learn the nature of the des...
متن کاملEecient Support for Reactive Rules in Prolog ?
FW rules is a Prolog library which provides eecient support for forward (reactive) rules in Prolog. The library is based on an indexing mechanism to achieve eeciency. The library supports interoperability between the forward chaining language and the underlying Prolog engine and it can be embedded in any Prolog application. The implementation is based on a runtime support written in C to perfor...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1985